package de.chessgame.src;

import net.minecraft.client.model.ModelBase;
import net.minecraft.client.model.ModelRenderer;

public class ModelKnight extends ModelBase {
	// fields
	ModelRenderer ShapeBottom1;
	ModelRenderer ShapeBottom5;
	ModelRenderer ShapeBottom3;
	ModelRenderer ShapeBottom4;
	ModelRenderer ShapeMidNeck;
	ModelRenderer ShapeHead07;
	ModelRenderer ShapeHead10;
	ModelRenderer ShapeNose;
	ModelRenderer ShapeHeadSmall1;
	ModelRenderer ShapeHeadSmall3;
	ModelRenderer ShapeHeadSmall2;
	ModelRenderer ShapeBottom2;
	ModelRenderer ShapeBottom0;
	ModelRenderer ShapeHead00;
	ModelRenderer ShapeHead01;
	ModelRenderer ShapeHead02;
	ModelRenderer ShapeHead03;
	ModelRenderer ShapeHead04;
	ModelRenderer ShapeHead05;
	ModelRenderer ShapeHead06;
	ModelRenderer ShapeHead08;
	ModelRenderer ShapeHead09;
	ModelRenderer ShapeEar2;
	ModelRenderer ShapeEar3;
	ModelRenderer ShapeEar0;
	ModelRenderer ShapeEar1;

	public ModelKnight() {
		textureWidth = 64;
		textureHeight = 32;

		ShapeBottom1 = new ModelRenderer(this, 46, 0);
		ShapeBottom1.addBox(0F, 0F, 0F, 5, 1, 4);
		ShapeBottom1.setRotationPoint(-2F, 23F, -2F);
		ShapeBottom1.setTextureSize(64, 32);
		ShapeBottom1.mirror = true;
		setRotation(ShapeBottom1, 0F, 0F, 0F);
		ShapeBottom5 = new ModelRenderer(this, 34, 0);
		ShapeBottom5.addBox(0F, 0F, 0F, 2, 1, 4);
		ShapeBottom5.setRotationPoint(0F, 21F, -2F);
		ShapeBottom5.setTextureSize(64, 32);
		ShapeBottom5.mirror = true;
		setRotation(ShapeBottom5, 0F, 0F, 0F);
		ShapeBottom3 = new ModelRenderer(this, 28, 0);
		ShapeBottom3.addBox(0F, 0F, 0F, 1, 1, 2);
		ShapeBottom3.setRotationPoint(2F, 21F, -1F);
		ShapeBottom3.setTextureSize(64, 32);
		ShapeBottom3.mirror = true;
		setRotation(ShapeBottom3, 0F, 0F, 0F);
		ShapeBottom4 = new ModelRenderer(this, 28, 3);
		ShapeBottom4.addBox(0F, 0F, 0F, 1, 1, 2);
		ShapeBottom4.setRotationPoint(-1F, 21F, -1F);
		ShapeBottom4.setTextureSize(64, 32);
		ShapeBottom4.mirror = true;
		setRotation(ShapeBottom4, 0F, 0F, 0F);
		ShapeMidNeck = new ModelRenderer(this, 34, 5);
		ShapeMidNeck.addBox(0F, 0F, 0F, 2, 1, 2);
		ShapeMidNeck.setRotationPoint(0F, 20F, -1F);
		ShapeMidNeck.setTextureSize(64, 32);
		ShapeMidNeck.mirror = true;
		setRotation(ShapeMidNeck, 0F, 0F, 0F);
		ShapeHead07 = new ModelRenderer(this, 42, 5);
		ShapeHead07.addBox(0F, 0F, 0F, 4, 1, 2);
		ShapeHead07.setRotationPoint(-1F, 19F, -1F);
		ShapeHead07.setTextureSize(64, 32);
		ShapeHead07.mirror = true;
		setRotation(ShapeHead07, 0F, 0F, 0F);
		ShapeHead10 = new ModelRenderer(this, 52, 5);
		ShapeHead10.addBox(0F, 0F, 0F, 2, 1, 4);
		ShapeHead10.setRotationPoint(0F, 19F, -2F);
		ShapeHead10.setTextureSize(64, 32);
		ShapeHead10.mirror = true;
		setRotation(ShapeHead10, 0F, 0F, 0F);
		ShapeNose = new ModelRenderer(this, 28, 6);
		ShapeNose.addBox(0F, 0F, 0F, 1, 2, 2);
		ShapeNose.setRotationPoint(-3F, 18F, -1F);
		ShapeNose.setTextureSize(64, 32);
		ShapeNose.mirror = true;
		setRotation(ShapeNose, 0F, 0F, 0F);
		ShapeHeadSmall1 = new ModelRenderer(this, 8, 8);
		ShapeHeadSmall1.addBox(0F, 0F, 0F, 6, 1, 4);
		ShapeHeadSmall1.setRotationPoint(-3F, 17F, -2F);
		ShapeHeadSmall1.setTextureSize(64, 32);
		ShapeHeadSmall1.mirror = true;
		setRotation(ShapeHeadSmall1, 0F, 0F, 0F);
		ShapeHeadSmall3 = new ModelRenderer(this, 0, 8);
		ShapeHeadSmall3.addBox(0F, 0F, 0F, 3, 2, 1);
		ShapeHeadSmall3.setRotationPoint(-1F, 17F, 2F);
		ShapeHeadSmall3.setTextureSize(64, 32);
		ShapeHeadSmall3.mirror = true;
		setRotation(ShapeHeadSmall3, 0F, 0F, 0F);
		ShapeHeadSmall2 = new ModelRenderer(this, 0, 13);
		ShapeHeadSmall2.addBox(0F, 0F, 0F, 5, 1, 4);
		ShapeHeadSmall2.setRotationPoint(-2F, 18F, -2F);
		ShapeHeadSmall2.setTextureSize(64, 32);
		ShapeHeadSmall2.mirror = true;
		setRotation(ShapeHeadSmall2, 0F, 0F, 0F);
		ShapeBottom2 = new ModelRenderer(this, 18, 13);
		ShapeBottom2.addBox(0F, 0F, 0F, 4, 1, 4);
		ShapeBottom2.setRotationPoint(-1F, 22F, -2F);
		ShapeBottom2.setTextureSize(64, 32);
		ShapeBottom2.mirror = true;
		setRotation(ShapeBottom2, 0F, 0F, 0F);
		ShapeBottom0 = new ModelRenderer(this, 31, 8);
		ShapeBottom0.addBox(0F, 0F, 0F, 2, 2, 6);
		ShapeBottom0.setRotationPoint(0F, 22F, -3F);
		ShapeBottom0.setTextureSize(64, 32);
		ShapeBottom0.mirror = true;
		setRotation(ShapeBottom0, 0F, 0F, 0F);
		ShapeHead00 = new ModelRenderer(this, 44, 12);
		ShapeHead00.addBox(0F, 0F, 0F, 6, 1, 4);
		ShapeHead00.setRotationPoint(-3F, 15F, -2F);
		ShapeHead00.setTextureSize(64, 32);
		ShapeHead00.mirror = true;
		setRotation(ShapeHead00, 0F, 0F, 0F);
		ShapeHead01 = new ModelRenderer(this, 32, 16);
		ShapeHead01.addBox(0F, 0F, 0F, 4, 1, 2);
		ShapeHead01.setRotationPoint(-2F, 13F, -1F);
		ShapeHead01.setTextureSize(64, 32);
		ShapeHead01.mirror = true;
		setRotation(ShapeHead01, 0F, 0F, 0F);
		ShapeHead02 = new ModelRenderer(this, 0, 18);
		ShapeHead02.addBox(0F, 0F, 0F, 4, 1, 2);
		ShapeHead02.setRotationPoint(-2F, 13F, -1F);
		ShapeHead02.setTextureSize(64, 32);
		ShapeHead02.mirror = true;
		setRotation(ShapeHead02, 0F, 0F, 0F);
		ShapeHead03 = new ModelRenderer(this, 7, 18);
		ShapeHead03.addBox(0F, 0F, 0F, 6, 1, 6);
		ShapeHead03.setRotationPoint(-3F, 16F, -3F);
		ShapeHead03.setTextureSize(64, 32);
		ShapeHead03.mirror = true;
		setRotation(ShapeHead03, 0F, 0F, 0F);
		ShapeHead04 = new ModelRenderer(this, 41, 17);
		ShapeHead04.addBox(0F, 0F, 0F, 4, 1, 4);
		ShapeHead04.setRotationPoint(-2F, 14F, -2F);
		ShapeHead04.setTextureSize(64, 32);
		ShapeHead04.mirror = true;
		setRotation(ShapeHead04, 0F, 0F, 0F);
		ShapeHead05 = new ModelRenderer(this, 20, 5);
		ShapeHead05.addBox(0F, 0F, 0F, 2, 1, 2);
		ShapeHead05.setRotationPoint(-1F, 12F, -1F);
		ShapeHead05.setTextureSize(64, 32);
		ShapeHead05.mirror = true;
		setRotation(ShapeHead05, 0F, 0F, 0F);
		ShapeHead06 = new ModelRenderer(this, 25, 19);
		ShapeHead06.addBox(0F, 0F, 0F, 4, 1, 6);
		ShapeHead06.setRotationPoint(-2F, 15F, -3F);
		ShapeHead06.setTextureSize(64, 32);
		ShapeHead06.mirror = true;
		setRotation(ShapeHead06, 0F, 0F, 0F);
		ShapeHead08 = new ModelRenderer(this, 16, 0);
		ShapeHead08.addBox(0F, 0F, 0F, 2, 1, 4);
		ShapeHead08.setRotationPoint(-1F, 13F, -2F);
		ShapeHead08.setTextureSize(64, 32);
		ShapeHead08.mirror = true;
		setRotation(ShapeHead08, 0F, 0F, 0F);
		ShapeHead09 = new ModelRenderer(this, 12, 5);
		ShapeHead09.addBox(0F, 0F, 0F, 3, 2, 1);
		ShapeHead09.setRotationPoint(-1F, 17F, -3F);
		ShapeHead09.setTextureSize(64, 32);
		ShapeHead09.mirror = true;
		setRotation(ShapeHead09, 0F, 0F, 0F);
		ShapeEar2 = new ModelRenderer(this, 14, 0);
		ShapeEar2.addBox(0F, 0F, 0F, 2, 3, 1);
		ShapeEar2.setRotationPoint(0F, 12F, -3F);
		ShapeEar2.setTextureSize(64, 32);
		ShapeEar2.mirror = true;
		setRotation(ShapeEar2, 0F, 0F, 0F);
		ShapeEar3 = new ModelRenderer(this, 8, 6);
		ShapeEar3.addBox(0F, 0F, 0F, 1, 1, 1);
		ShapeEar3.setRotationPoint(0F, 11F, -3F);
		ShapeEar3.setTextureSize(64, 32);
		ShapeEar3.mirror = true;
		setRotation(ShapeEar3, 0F, 0F, 0F);
		ShapeEar0 = new ModelRenderer(this, 8, 0);
		ShapeEar0.addBox(0F, 0F, 0F, 2, 3, 1);
		ShapeEar0.setRotationPoint(0F, 12F, 2F);
		ShapeEar0.setTextureSize(64, 32);
		ShapeEar0.mirror = true;
		setRotation(ShapeEar0, 0F, 0F, 0F);
		ShapeEar1 = new ModelRenderer(this, 4, 6);
		ShapeEar1.addBox(0F, 0F, 0F, 1, 1, 1);
		ShapeEar1.setRotationPoint(0F, 11F, 2F);
		ShapeEar1.setTextureSize(64, 32);
		ShapeEar1.mirror = true;
		setRotation(ShapeEar1, 0F, 0F, 0F);
	}

	public void render(float f5) {
		ShapeBottom1.render(f5);
		ShapeBottom5.render(f5);
		ShapeBottom3.render(f5);
		ShapeBottom4.render(f5);
		ShapeMidNeck.render(f5);
		ShapeHead07.render(f5);
		ShapeHead10.render(f5);
		ShapeNose.render(f5);
		ShapeHeadSmall1.render(f5);
		ShapeHeadSmall3.render(f5);
		ShapeHeadSmall2.render(f5);
		ShapeBottom2.render(f5);
		ShapeBottom0.render(f5);
		ShapeHead00.render(f5);
		ShapeHead01.render(f5);
		ShapeHead02.render(f5);
		ShapeHead03.render(f5);
		ShapeHead04.render(f5);
		ShapeHead05.render(f5);
		ShapeHead06.render(f5);
		ShapeHead08.render(f5);
		ShapeHead09.render(f5);
		ShapeEar2.render(f5);
		ShapeEar3.render(f5);
		ShapeEar0.render(f5);
		ShapeEar1.render(f5);
	}

	private void setRotation(ModelRenderer model, float x, float y, float z) {
		model.rotateAngleX = x;
		model.rotateAngleY = y;
		model.rotateAngleZ = z;
	}

}
